package cn.lf.service;

import cn.lf.dto.order.OrderInfoAddDTO;
import cn.lf.dto.order.OrderInfoSetDTO;
import cn.lf.dto.sys.order.OrderInfoGetRepDTO;
import cn.lf.dto.sys.order.OrderInfoGetReqDTO;
import cn.lf.dto.sys.order.OrderInfoSingleDTO;
import cn.lf.dto.order.OrderStatusSetDTO;
import cn.lf.entity.OrderInfo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author guoyy
 * @since 2024-04-07
 */
public interface IOrderInfoService extends IService<OrderInfo> {

    /**
     * 获取订单信息列表 分页
     * @param params
     * @return
     */
    IPage<OrderInfoGetRepDTO> queryOrderInfoPage(OrderInfoGetReqDTO params);

    /**
     * 设置订单状态
     * @param orderStatusSetDTO
     */
    void setOrderStatus(OrderStatusSetDTO orderStatusSetDTO);

    /**
     * 根据id获取单个订单信息
     * @param orderId
     * @return
     */
    OrderInfoSingleDTO getOrderInfoById(String orderId);

    /**
     *
     * @param orderInfoSetDTO
     */
    void setOrderInfo(OrderInfoSetDTO orderInfoSetDTO);

    /**
     *
     * @param orderId
     */
    void delOrderInfoById(String orderId);

    /**
     * 新增订单信息
     * @param orderInfoAddDTO
     */
    void addOrderInfo(OrderInfoAddDTO orderInfoAddDTO);


}
